package cn.iocoder.yudao.module.scrm.exception;

import cn.iocoder.yudao.module.scrm.feign.flow.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * 全局异常处理器-抛出{@link FieldRepeatException } 的异常返回错误信息
 *
 * @Author LiZhiMin
 * @Date 2024/8/21 12:19
 */

@RestControllerAdvice  // 用于全局处理 REST API 异常
@Slf4j  // 日志记录器
public class GlobalControllerExceptionHandler {

    @ExceptionHandler(FieldRepeatException.class)  // 处理 FieldRepeatException 异常
    private R fieldRepeatExceptionHandler(FieldRepeatException e) {
        // 返回错误响应，包含错误码 9999 和异常消息
        return R.error(9999, e.getErrors().get("message").toString());
    }
}
